package org.xingole.jgit.lib;

/**
 * {@code Constants} class is an utils class for the constants used throughout jgit project.
 * 
 * Please, remeber that the class is improved as the entity class development periods.
 */
public final class Constants {
    
    /**
     * A Git object SHA-1 hash is 160 bits, i.e. 20 bytes.
     * 
     * oh! The SHA-1 hash value is represented by four <code>int</code> type
     * variable, namely viewed as the integer in math for jgit developers.
     *
     * <p>Changing this assumption is not going to be as easy as changing this declaration.Ok...our many implementation
     * is based on this assumption. If changing the assumption, my god!!</p>
     */
    public static final int OBJECT_ID_LENGTH = 20;

    /**
     * A Git object can be expressed as a 40 character string of hexadecimal digits.
     * 
     * em...it is here that jgit think of the SHA-1 as the string from the display aspects.
     */
    public static final int OBJECT_ID_STRING_LENGTH = OBJECT_ID_LENGTH * 2;
}
